package com.training1.core.entity;

import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.ibatis.type.Alias;

import com.training1.core.common.entity.DataEntity;

@Alias("ContractDet")
public class ContractDetEntity extends DataEntity {

		/*
		 * 合同执行信息
		 */
		private static final long serialVersionUID = 5608799216669341214L;
		
		private int cyc;//期数
		
		private Date expectDate;//预期还款日
		private String expectDateStr;
		
		private BigDecimal expectAmount;//预期还款总额
		
		private Date actualDate;//实际还款日
		private String actualDateStr;
		
		private BigDecimal actualAmount;//实际还款总额
		
		private BigDecimal baseAmount;//基础服务费
		
		private BigDecimal addAmount;//增值服务费
		
		private BigDecimal residueBaseAmount;//剩余基础服务费
		
		private BigDecimal totalBaseAmount;//累计基础服务费
		
		private BigDecimal totalAddAmount;//累计增值服务费
		
		private BigDecimal totalDelayAmount;//合计延迟服务费

		private String status;//当期执行状态（0：正常，1：逾期 2：发生过延期）
		
		public int getCyc() {
			return cyc;
		}

		public void setCyc(int cyc) {
			this.cyc = cyc;
		}

		public Date getExpectDate() {
			return expectDate;
		}

		public void setExpectDate(Date expectDate) {
			this.expectDate = expectDate;
			if(null != expectDate){
				SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
				this.setExpectDateStr(sf.format(expectDate));
			}
		}


		public Date getActualDate() {
			return actualDate;
		}

		public void setActualDate(Date actualDate) {
			this.actualDate = actualDate;
			if(null != actualDate){
				SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
				this.setActualDateStr(sf.format(actualDate));
			}
			
		}

		public String getExpectDateStr() {
			return expectDateStr;
		}

		public void setExpectDateStr(String expectDateStr) {
			this.expectDateStr = expectDateStr;
		}

		public String getActualDateStr() {
			return actualDateStr;
		}

		public void setActualDateStr(String actualDateStr) {
			this.actualDateStr = actualDateStr;
		}

		public String getStatus() {
			return status;
		}

		public void setStatus(String status) {
			this.status = status;
		}

		public BigDecimal getExpectAmount() {
			return expectAmount;
		}

		public void setExpectAmount(BigDecimal expectAmount) {
			this.expectAmount = expectAmount;
		}

		public BigDecimal getActualAmount() {
			return actualAmount;
		}

		public void setActualAmount(BigDecimal actualAmount) {
			this.actualAmount = actualAmount;
		}

		public BigDecimal getBaseAmount() {
			return baseAmount;
		}

		public void setBaseAmount(BigDecimal baseAmount) {
			this.baseAmount = baseAmount;
		}

		public BigDecimal getAddAmount() {
			return addAmount;
		}

		public void setAddAmount(BigDecimal addAmount) {
			this.addAmount = addAmount;
		}

		public BigDecimal getResidueBaseAmount() {
			return residueBaseAmount;
		}

		public void setResidueBaseAmount(BigDecimal residueBaseAmount) {
			this.residueBaseAmount = residueBaseAmount;
		}

		public BigDecimal getTotalBaseAmount() {
			return totalBaseAmount;
		}

		public void setTotalBaseAmount(BigDecimal totalBaseAmount) {
			this.totalBaseAmount = totalBaseAmount;
		}

		public BigDecimal getTotalAddAmount() {
			return totalAddAmount;
		}

		public void setTotalAddAmount(BigDecimal totalAddAmount) {
			this.totalAddAmount = totalAddAmount;
		}

		public BigDecimal getTotalDelayAmount() {
			return totalDelayAmount;
		}

		public void setTotalDelayAmount(BigDecimal totalDelayAmount) {
			this.totalDelayAmount = totalDelayAmount;
		}

		
		
		

}
